# Contributor: Leo <thinkabit.ukim@gmail.com>
# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=py3-websockets
_pkgname=websockets
pkgver=8.1
pkgrel=1
pkgdesc="An implementation of the WebSocket Protocol (RFC 6455)"
options="net"
url="https://websockets.readthedocs.io"
arch="all"
license="BSD-3-Clause"
makedepends="python3-dev py3-setuptools"
source="$pkgname-$pkgver.tar.gz::https://github.com/aaugustin/websockets/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver

build() {
	python3 setup.py build
}

check() {
	# Test requires loopback module to be enabled
	# which is not in CI
	rm tests/test_client_server.py
	rm tests/test_auth.py
	rm tests/test_protocol.py

	# Fails on CI for aarch64
	# FAIL: test_keepalive_ping_stops_when_connection_closing (tests.test_protocol.ClientTests)
	# AssertionError: False is not true
	case "$CARCH" in
		armv7) return 0 ;; # Tests are flaky under drone CI
	esac

	python3 setup.py test
}

package() {
	python3 setup.py install --root="$pkgdir" --optimize=1
}

sha512sums="d245702574cf513da54bfc0ca10768558cd4e5017ecf8cb647f4b9176561192a3ace64edfc5c6f735664bf1b6136aa0bb9828114478f92d2c051e3109a218c12  py3-websockets-8.1.tar.gz"
